(REM flags)
(1 
(2
(3 swearing
(4 beggar paid
(5 sweet machine pulled
(6 blank
(7 money inserted via BUY SWEETS command
(8 fiver gotten
(9  tube1 map on is read
(10 tube1 guard is standing if ON
(11 tube2 you are sitting
(12 tube2 drunk answer Yes is ON
(13 sardines bought if ON
(14 lager drunk if ON
(15 release given to software company receptionist if ON
(16 first time into reception if OFF
(17 jacket hung
(18 jacket got once
(19 peanut butter OFF not given
(20 sardine OFF not given
(21 toast not obtained if OFF
(22 screwdriver OFF if not given
(23 tape OFF if not given
(26 program completed if ON
(27 fire exit open if ON
(28 at EMAP if ON
(29 review written
(30 REM tube1 in station

(REM variables
(1
(2 bookies for chosen horse
(4 sweets in packet
(5 stations on tube1
(6 pearls
(7 lift floor
(8 writing review
(9 money

(REM counters
(1 unused
(2 ladder wobbling
(3 tube1 boarding plaform 
(4 tube1 guard sits and stands
(5 tube2 journey
(6 receptionist given release - do not re-use!
(7 drinking lager
(8 in taxi
(9 weight

(REM hit response)

(REM 52)
COMMAND HIT ANY
Not AtLocation 22 (REM platform)
NounPresent
PrintMessage 50 (REM no violence)
MinusScore 10
DoneWithTurn
END_COMMAND

(REM 61)
COMMAND HIT ANY
Not AtLocation 22 (REM platform)
Not NounPresent
PrintMessage 55 (REM not there)
DoneWithTurn
END_COMMAND

(REM write response too early)

COMMAND WRITE REVIEW
FlagOff 26 (REM prog not written)
PrintMessage 165 (REM no can do)
DoneWithTurn
END_COMMAND

(REM swear response)

(REM 31)
COMMAND FUCK ANY
FlagOFF 3 (REM done before? No)
PrintMessage 26 (REM I always try that)
Delay 2
PrintMessage 27 (REM DOS prompt)
Delay 3
TurnFlagOn 3 (REM Has been done before)
PrintMessage 28 (REM bet that scared you)
MinusScore 10
DoneWithTurn
END_COMMAND

(REM 32)
COMMAND FUCK ANY
FlagON 3 (REM done before? Yes)
PrintMessage 29 (REM I warned you)
GoToRoom 199
DoneWithTurn
END_COMMAND

(REM talk to)

(REM 42)
COMMAND TALK TO ANY
Not NounPresent
PrintMessage 40 (REM talking to yourself)
DoneWithTurn
END_COMMAND

(REM living room letters and phone)

(REM 1)
COMMAND READ ANY
AtLocation 2
TurnCounterOn 1
END_COMMAND

(REM 2)
COMMAND ANY
CounterGT 1 5
AtLocationLT 7 (REM inside house)
Tone 880 500
Delay 0.5
Tone 880 500
PrintMessage 4 (REM phone is ringing)
BlankLine
END_COMMAND

(REM 3)
COMMAND ANSWER TELEPHONE
AtLocation 2 (REM study)
CounterGT 1 5 (REM enough turns)
PrintMessage 2 (REM Gail commission)
PlusScore 10
TurnCounterOff 1
DoneWithTurn
END_COMMAND

(REM 4)
COMMAND ANSWER TELEPHONE
AtLocation 2 (REM study)
PrintMessage 1 (REM hear buzzing)
DoneWithTurn
END_COMMAND

(REM living room computer)

(REM 5)
COMMAND TYPE DIR
AtLocation 2 (REM study)
PrintMessage 3 (REM directory list)
DoneWithTurn
END_COMMAND

(REM 6)
COMMAND TYPE TIPS
AtLocation 2 (REM study)
PrintMessage 5 (REM tip)
DoneWithTurn
END_COMMAND

(REM 7)
COMMAND TYPE WORDPROC
AtLocation 2 (REM study)
PrintMessage 6 (REM wordproc)
DoneWithTurn
END_COMMAND

(REM 8)
COMMAND TYPE ACCOUNTS
AtLocation 2 (REM study)
PrintMessage 7 (REM accounts)
DoneWithTurn
END_COMMAND

(REM 9)
COMMAND TYPE ANY
AtLocation 2 (REM study)
PrintMessage 8 (REM bad command or file name)
DoneWithTurn
END_COMMAND

(REM ceiling tile)

(REM 10)
COMMAND NORTH
AtLocation 5 (REM hall)
IsCarrying 208 (REM steps)
ChangePassageway 1 24 (REM alt bathroom)
END_COMMAND

COMMAND NORTH
AtLocation 5 (REM hall)
Not IsCarrying 208 (REM steps)
ChangePassageway 1 23 (REM bathroom)
END_COMMAND

(REM 11)
COMMAND UP
IsCarrying 208 (REM steps)
PrintMessage 17 (REM can't climb steps)
DoneWithTurn
END_COMMAND

(REM 12)
COMMAND UP
AtLocation 24 (REM alternative bathroom)
Not IsCarrying 208 (REM has dropped steps)
TurnCounterOn 2 (REM up to three turns wobbling)
END_COMMAND

(REM 13)
COMMAND ANY
AtLocation 25 (REM near ceiling)
FlagOff 1 (REM first time)
CounterEquals 2 4 (REM up to three turns wobbling)
PrintMessage 9 (REM fall down)
GoToRoom 24 (REM alternative bathroom)
TurnCounterOff 2 (REM re-sets wobbling)
TurnFlagOn 1 (REM done once)
DoneWithTurn
END_COMMAND

(REM 14)
COMMAND ANY
AtLocation 25 (REM near ceiling)
FlagOn 1 (REM second time)
CounterEquals 2 4 (REM up to two turns wobbling)
PrintMessage 14 (REM fall down)
GoToRoom 23 (REM original bathroom)
TurnCounterOff 2 (REM re-sets wobbling)
SendToRoom 208 0 (REM steps to limbo)
SendToRoom 219 23 (REM broken steps to bathroom) 
DoneWithTurn
END_COMMAND

(REM 15)
COMMAND GET TILE
AtLocation 25 (REM near ceiling)
PrintMessage 15 (REM tile doesn't come away)
DoneWithTurn
END_COMMAND

(REM 16)
COMMAND PULL TILE
AtLocation 25 (REM near ceiling)
VariableLT 1 3 (REM not yet three attempts)
AddToVariable 1 1 (REM add attempt)
END_COMMAND

(REM 17)
COMMAND PULL TILE
AtLocation 25 (REM near ceiling)
VariableEquals 1 3 (REM third attempt)
PrintMessage 16 (REM tile breaks)
GetIt 220 (REM get broken tile)
SendToRoom 206 0 (REM tile to limbo)
SetVariableTo 1 0 (REM resets)
DoneWithTurn
END_COMMAND

(REM shoes)

(REM 18)
COMMAND LOOK UNDER BED
AtLocation 4
IsLocated 207 0
PutInCurrentRoom 207
DoneWithTurn
END_COMMAND

(REM 19)
COMMAND ANY
AtLocationLT 7 (REM inside house)
IsWearing 205 (REM shoe)
Not IsWearing 207 (REM other shoe)
PrintMessage 10
BlankLine
END_COMMAND

(REM 20)
COMMAND ANY
AtLocationLT 7 (REM inside house)
IsWearing 207 (REM shoe)
Not IsWearing 205 (REM other shoe)
PrintMessage 10 (REM hobble around)
BlankLine
END_COMMAND

(REM 21)
COMMAND EAST
AtLocation 7 (REM garden)
Not IsWearing 205 (REM shoe)
OR
Not IsWearing 207 (REM shoe)
PrintMessage 11 (REM dog shit)
MinusScore 10
BlankLine
END_COMMAND

(REM 22)
COMMAND ANY
AtLocation 8 (REM street outside flat)
Not IsWearing 205 (REM shoe)
OR
Not IsWearing 207 (REM shoe)
PrintMessage 12 (REM stab foot)
GoToRoom 199
DoneWithTurn
END_COMMAND

(REM house key)

(REM 23)
COMMAND WEST
AtLocation 7 (REM garden)
Not IsCarrying 209 (REM housekey)
PrintMessage 13
LookAtRoom
DoneWithTurn
END_COMMAND

(REM fiver)

(REM 63)
COMMAND EXAMINE HEDGE
AtLocation 7 (REM garden)
FlagOn 8 (REM fiver gotten)
END_COMMAND

(REM 24)
COMMAND EXAMINE HEDGE
AtLocation 7 (REM garden)
FlagOff 8 (REM fiver not found)
PrintMessage 18 (REM you find a fiver)
PutInCurrentRoom 218 (REM fiver)
SetVariableTo 9 500 (REM five pounds)
TurnFlagOn 8 (REM fiver gotten)
DoneWithTurn
END_COMMAND

(REM in bank)

COMMAND GIVE LEAFLET TO CASHIER
AtLocation 14 (REM bank counter)
IsCarrying 222 (REM bank leaflet)
PrintMessage 22 (REM cashier gives booklet)
SwapLocations 222 223 (REM leaflet and booklet)
DoneWithTurn
END_COMMAND

(REM 30)
COMMAND EAST
AtLocation 14 (REM bank counter)
IsCarrying 224 (REM pen)
PrintMessage 24 (REM can't leave)
MinusScore 5
DoneWithTurn
END_COMMAND

(REM bookies)

COMMAND WRITE SLIP
AtLocation 17 (REM counter)
Not IsCarrying 224 (REM bank pen)
IsCarrying 227 (REM slip)
PrintMessage 19 (REM no pen)
DoneWithTurn
END_COMMAND

(REM 34)
COMMAND WRITE SLIP
IsCarrying 224 (REM bank pen)
IsCarrying 227 (REM slip)
PrintMessage 30 (REM which horse)
DoneWithTurn
END_COMMAND

(REM 36)
COMMAND WRITE ANY
IsCarrying 224 (REM biro)
IsCarrying 227 (REM slip)
SetVariableTo 2 0
NounToVariable 2 (REM puts it in slip)
VariableLT 2 5
PrintMessage 37 (REM you write your selection)
DoneWithTurn
END_COMMAND

(REM 35)
COMMAND WRITE ANY
IsCarrying 224
IsCarrying 227
SetVariableTo 2 0
NounToVariable 2 (REM puts it in slip)
VariableGT 2 4
PrintMessage 31 (REM select again)
DoneWithTurn
END_COMMAND

(REM 40)
COMMAND GIVE FIVER TO CLERK
ReDirectTo GIVE SLIP TO CLERK
END_COMMAND

COMMAND GIVE SLIP TO CLERK
AtLocation 17 (REM counter)
VariableEquals 2 0 (REM not written)
PrintMessage 38 (REM give to clerk)
DoneWithTurn
END_COMMAND

(REM 41)
COMMAND GIVE SLIP TO CLERK
AtLocation 17 (REM counter)
VariableLT 9 500 (REM not got five pounds)
PrintMessage 166 (REM no fiver)
DoneWithTurn
END_COMMAND

(REM 37)
COMMAND GIVE SLIP TO CLERK
AtLocation 17 (REM counter)
VariableEquals 2 3 (REM winning choice)
PrintMessage 35 (REM give to clerk)
SendToRoom 218 0 (REM fiver away)
SendToRoom 227 0 (REM slip away)
PrintMessage 32 (REM race)
PrintMessage 33 (REM you won)
GetIt 228 (REM twenty pound note)
AddToVariable 9 1500 (REM increases to 20 pounds)
DoneWithTurn
END_COMMAND

(REM 38)
COMMAND GIVE SLIP TO CLERK
AtLocation 17 (REM counter)
Not VariableEquals 2 3 (REM wrong choice)
PrintMessage 35 (REM give to clerk)
SendToRoom 218 0 (REM fiver away)
SendToRoom 227 0 (REM slip away)
PrintMessage 32 (REM race)
PrintMessage 34 (REM you lost)
DoneWithTurn
END_COMMAND

(REM 39)
COMMAND TALK TO PUNTER
AtLocation 16 (REM bookies)
PrintMessage 36 (REM punter's tip)
DoneWithTurn
END_COMMAND

(REM beggar)

(REM 43)
COMMAND GIVE MONEY TO BEGGAR
Present 303 (REM beggar)
FlagOff 4 (REM money not given)
IsCarrying 218 (REM fiver)
OR
IsCarrying 228 (REM twenty pounds)
PrintMessage 44 (REM are you sure?)
PromptForYes
GetIt 229 (REM change)
SendToRoom 218 0 (REM fiver)
SendToRoom 228 0 (REM twenty)
SubtractFromVariable 9 20 (REM removes 20p)
PrintMessage 45 (REM tramp smiles)
TurnFlagON 4 (REM money given)
DoneWithTurn
END_COMMAND

(REM 44)
COMMAND DOWN
AtLocation 20 (REM tube ticket hall)
Present 303 (REM beggar)
SendToRoom 303 15 (REM beggar to starting point)
END_COMMAND

(REM 45)
COMMAND WEST
AtLocation 8 (REM street outside house)
Present 303 (REM beggar)
SendToRoom 303 15 (REM beggar to starting point)
END_COMMAND

(REM 46)
COMMAND ANY
Present 303 (REM beggar)
FlagOn 4 (REM money given)
SendToRoom 303 0 (REM dispose of beggar)
END_COMMAND

(REM 42)
COMMAND ANY
Present 303 (REM beggar)
FlagOff 4 (REM money not given)
RandomMessage 41 43
END_COMMAND

(REM ticket machine)

(REM 50)
COMMAND INSERT MONEY
AtLocation 20 (REM ticket office)
ReDirectTo BUY TICKET
END_COMMAND

(REM 47)
COMMAND BUY TICKET
AtLocation 20 (REM ticket office)
IsCarrying 218 (REM fiver)
OR
IsCarrying 228 (REM twenty quid)
PrintMessage 46 (REM need change)
DoneWithTurn
END_COMMAND

(REM 48)
COMMAND BUY TICKET
AtLocation 20 (REM ticket office)
IsCarrying 229 (REM change)
PrintMessage 47 (REM ticket appears)
GetIt 232 (REM ticket)
SubtractFromVariable 9 120 (REM adjusts money)
DoneWithTurn
END_COMMAND

(REM 49)
COMMAND BUY TICKET
AtLocation 20 (REM ticket office)
PrintMessage 48 (REM no money)
DoneWithTurn
END_COMMAND

(REM sweet machine)

(REM 59)
COMMAND INSERT MONEY
AtLocation 22 (REM platform)
ReDirectTo Buy Sweets
END_COMMAND

(REM 53)
COMMAND BUY SWEETS
AtLocation 22 (REM platform)
IsCarrying 218 (REM fiver)
OR
IsCarrying 228 (REM twenty quid)
PrintMessage 46 (REM need change)
DoneWithTurn
END_COMMAND

(REM 54)
COMMAND BUY SWEETS
AtLocation 22 (REM platform)
IsCarrying 229 (REM change)
TurnFlagOn 7 (REM money inserted)
SubtractFromVariable 9 30 (REM adjusts money)
PrintMessage 54 (REM which drawer)
GetNumberInput 1 4 (REM chooses drawer)
PrintMessage 51 (REM machine doesn't work)
DoneWithTurn
END_COMMAND

(REM 55)
COMMAND BUY SWEETS
AtLocation 22 (REM platform)
PrintMessage 48 (REM no money)
DoneWithTurn
END_COMMAND

(REM 51)
COMMAND HIT MACHINE
AtLocation 22 (REM platform)
FlagOff 5 (REM not pulled)
PrintMessage 49 (REM not yet)
DoneWithTurn
END_COMMAND

(REM 60)
COMMAND HIT MACHINE
AtLocation 22 (REM platform)
FlagOn 5 (REM pulled)
PrintMessage 52 (REM sweets appear)
PutInCurrentRoom 233 (REM sweets packet)
SetVariableTo 4 6 (REM sweets in packet)
DoneWithTurn
END_COMMAND

(REM 56)
COMMAND PULL MACHINE
AtLocation 22 (REM platform)
FlagOn 7 (REM money inserted)
TurnFlagOn 5
END_COMMAND

(REM 62)
COMMAND OPEN PACKET
Present 233
GetIt 234
GetIt 235
GetIt 236
GetIt 237
GetIt 238
GetIt 239
GetIt 240
GetIt 241
PrintMessage 56
SubtractFromVariable 4 6 (REM empty packet)
DoneWithTurn
END_COMMAND

(REM boarding tube1)

COMMAND ANY
AtLocation 22 (REM platform)
CounterEquals 3 0 (REM counter not on)
TurnCounterOn 3 (REM starts timing)
END_COMMAND

COMMAND ANY
AtLocation 22 (REM platform)
CounterEquals 3 3 (REM five turns after arriving)
PrintMessage 65 (REM train arrives)
ChangePassageway 2 26 (REM way on to train)
TurnFlagOn 30 (REM standing)
END_COMMAND

COMMAND ANY
AtLocation 22 (REM platform)
CounterEquals 3 8 (REM eight turns after arriving)
PrintMessage 66 (REM train departs)
ChangePassageway 2 0 (REM way on to train)
TurnFlagOff 30
TurnCounterOff 3 (REM resets for next train)
END_COMMAND

COMMAND SOUTH
AtLocation 22 (REM platform)
FlagOn 30
TurnFlagOn 11 (REM sits)
END_COMMAND

(REM sit and stand in tube1)

COMMAND SIT
AtLocation 26 (REM tube1)
FlagOff 11 (REM standing)
PrintMessage 118 (REM sit)
TurnFlagOn 11 (REM sitting)
DoneWithTurn
END_COMMAND

COMMAND SIT
AtLocation 26 (REM tube1)
FlagOn 11 (REM sitting)
PrintMessage 75 (REM already sitting)
DoneWithTurn
END_COMMAND

COMMAND STAND
AtLocation 26 (REM tube1)
FlagOn 11 (REM sitting)
PrintMessage 119 (REM you stand)
TurnFlagOff 11 (REM standing)
DoneWithTurn
END_COMMAND

COMMAND STAND
AtLocation 26 (REM tube1)
FlagOff 11 (REM standing)
PrintMessage 76 (REM already stand)
DoneWithTurn
END_COMMAND

(REM tube1: guard sit and stand)

COMMAND ANY
AtLocation 26 (REM train)
CounterEquals 4 0 (REM zero counter)
TurnCounterOn 4 (REM time between stops)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube1)
CounterLT 4 3 (REM train in tunnel)
PrintMessage 57 (REM guard sits)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube1)
CounterLT 4 3 (REM train in tunnel)
IsOpen 243 (REM box)
PrintMessage 61 (REM guard scowls)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube1)
CounterEquals 4 3 (REM train arrive)
PrintMessage 59 (REM train arrives)
TurnFlagOn 10 (REM guard stands)
ChangePassageway 1 27 (REM exit N open)
AddToVariable 5 1 (REM no of stations)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube1)
CounterGT 4 3 (REM train in station)
CounterLT 4 7 (REM but not ready to restart)
PrintMessage 58 (REM guard standing)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube1)
CounterEquals 4 7 (REM train re-starts)
PrintMessage 60 (REM train re-starts)
TurnFlagOff 10 (REM guard sits)
ChangePassageway 1 0 (REM no exit)
TurnCounterOff 4 (REM resets for next stop)
END_COMMAND

(REM tube 1: right station?)

COMMAND READ MAP
AtLocation 26 (REM on tube)
TurnFlagOn 9 (REM map read)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube)
FlagOn 9 (REM map read)
VariableEquals 5 3 (REM third station)
PrintMessage 67 (REM this is your stop)
END_COMMAND

COMMAND ANY
AtLocation 26 (REM on tube)
VariableEquals 5 6 (REM way past wrong station)
PrintMessage 68 (REM too far)
GoToRoom 199 (REM end)
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 26 (REM on destination platform)
Not VariableEquals 5 3 (REM don't get out at third stop)
FlagOn 10 (REM train in station)
PrintMessage 63 (REM - wrong platform)
GoToRoom 199 (REM end)
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation 27 (REM on tube1)
ChangePassageway 2 0
TurnFlagOff 10
TurnCounterOff 4
PrintMessage 66
DoneWithTurn
END_COMMAND

(REM tube1: sandwich swapping)

COMMAND ANY
AtLocation 26 (REM on tube1)
FlagOff 10 (REM guard sitting)
IsCarrying 243 (REM lunch box)
Or
IsCarrying 244 (REM sandwich)
PrintMessage 62 (REM guard attacks)
GoToRoom 199 (REM end)
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 26 (REM on tube1)
FlagOn 10 (REM in station)
IsCarrying 243 (REM lunch box)
Or
IsCarrying 244 (REM sandwich)
PrintMessage 62 (REM guard attacks)
GoToRoom 199 (REM end)
DoneWithTurn
END_COMMAND

COMMAND SWAP BREAD ANY TILE
IsCarrying 244 (REM sandwich)
IsCarrying 220 (REM ceiling tiles)
SwapLocations 220 245 (REM ceiling tiles and bread)
PrintMessage 64 (REM successful swap)
DoneWithTurn
END_COMMAND

COMMAND SWAP TILE ANY BREAD
IsCarrying 244 (REM sandwich)
IsCarrying 220 (REM ceiling tiles)
SwapLocations 220 245 (REM ceiling tiles and bread)
PrintMessage 64 (REM successful swap)
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 26
FlagOn 10
TurnFlagOff 11 (REM stands)
END_COMMAND

(REM get on tube2)

COMMAND NORTH
AtLocation 39 (REM start plaform)
GoToRoom 40 (REM tube carriage)
ChangePassageway 1 0 (REM exit N closed)
PrintMessage 69 (REM doors shut train starts)
TurnCounterOn 5
DoneWithTurn
END_COMMAND

(REM sit and stand in tube2)

COMMAND ANY
AtLocation 40 (REM tube carriage)
FlagOff 11 (REM standing)
PrintMessage 70 (REM train rocks one empty seat)
END_COMMAND

COMMAND SIT
AtLocation 40 (REM tube carriage)
FlagOff 11 (REM standing)
PrintMessage 71 (REM sit opp drunk)
TurnFlagOn 11 (REM sitting)
DoneWithTurn
END_COMMAND

COMMAND SIT
AtLocation 40 (REM tube carriage)
FlagOn 11 (REM sitting)
PrintMessage 75 (REM already sitting)
DoneWithTurn
END_COMMAND

COMMAND STAND
AtLocation 40 (REM tube carriage)
FlagOn 11 (REM sitting)
PrintMessage 73 (REM you stand)
TurnFlagOff 11 (REM standing)
DoneWithTurn
END_COMMAND

COMMAND STAND
AtLocation 40 (REM tube carriage)
FlagOff 11 (REM standing)
PrintMessage 76 (REM already stand)
DoneWithTurn
END_COMMAND

(REM drunk conversation tube 2)

COMMAND TALK TO DRUNK
AtLocation 40 (REM tube carriage)
FlagOn 11 (REM sitting)
FlagOff 12 (REM Yes not answered)
PrintMessage 72
PromptForYes
TurnFlagOn 12 (REM yes answered)
PrintMessage 77
GetIt 248
DoneWithTurn
END_COMMAND

COMMAND TALK TO DRUNK
AtLocation 40 (REM tube carriage)
FlagOn 11 (REM sitting)
FlagOn 12 (REM Yes answered)
PrintMessage 76
DoneWithTurn
END_COMMAND

(REM opens way out at destination)

COMMAND ANY
AtLocation 40 (REM tube carriage)
CounterEquals 5 5
PrintMessage 78
ChangePassageway 1 41 (REM exit N open)
GoToRoom 41 (REM to destination)
DoneWithTurn
END_COMMAND

(REM leaving station at destination)

COMMAND NORTH
AtLocation 42 (REM barrier)
Not IsCarrying 232 (REM ticket)
PrintMessage 80 (REM no ticket)
GoToRoom 199
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 42 (REM barrier)
IsCarrying 232 (REM ticket)
SendToRoom 232 0
PrintMessage 79 (REM takes ticket)
END_COMMAND

COMMAND INSERT TICKET 
AtLocation 42 (REM barrier)
IsCarrying 232 (REM ticket)
SendToRoom 232 0
PrintMessage 79 (REM takes ticket)
GoToRoom 43 (REM player to street)
END_COMMAND

(REM return to start from destination)

COMMAND SOUTH
AtLocation 48 (REM shortcut)
MinusScore 25
SubtractFromVariable 9 120 (REM cost of second ticket)
END_COMMAND

COMMAND SOUTH
AtLocation 55 (REM shortcut)
MinusScore 25
SubtractFromVariable 9 120 (REM cost of second ticket)
END_COMMAND

(REM trendy record shop)

COMMAND NORTH
AtLocation 46
IsCarrying 250 (REM bin)
PrintMessage 81 (REM you go through)
GoToRoom 47
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 46
Not IsCarrying 250 (REM bin)
PrintMessage 82 (REM can't go)
DoneWithTurn
END_COMMAND

COMMAND SOUTH
AtLocation 46
GoToRoom 44
DoneWithTurn
END_COMMAND

COMMAND GET CDS
AtLocation 46
PrintMessage 83 (REM not trendy enough)
DoneWithTurn
END_COMMAND

COMMAND BUY CDS
AtLocation 46
PrintMessage 83 (REM not trendy enough)
DoneWithTurn
END_COMMAND

COMMAND TALK TO SALESMAN
AtLocation 46
PrintMessage 84 (REM insult)
DoneWithTurn
END_COMMAND

COMMAND ANY SUPERTRAMP ANY
AtLocation 46
PrintMessage 85 (REM laughs)
DoneWithTurn
END_COMMAND

COMMAND ANY
AtLocation 46
RandomMessage 86 89
END_COMMAND

(REM antique shop)

COMMAND GET PEARL
AtLocation 45
AddToVariable 6 1
VariableGT 6 2 (REM more than two pearls)
PrintMessage 90 (REM owner appears)
GoToRoom 199
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 45
IsCarrying 253 (REM compass)
PrintMessage 100 (REM owner appears)
GoToRoom 199
DoneWithTurn
END_COMMAND

(REM Ben's Bargains)

COMMAND BUY SARDINES
AtLocation 50
IsCarrying 229 (REM change)
SubtractFromVariable 9 25 (REM 25p)
GetIt 258 (REM sardines)
TurnFlagOn 13
PrintMessage 137
DoneWithTurn
END_COMMAND

COMMAND BUY SARDINES
AtLocation 50
Not IsCarrying 229 (REM change)
PrintMessage 48 (REM no money)
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 50
IsCarrying 258 (REM sardines)
FlagOff 13
PrintMessage 101 (REM leave without paying)
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 50
Not IsCarrying 258
Or
FlagOn 13
GoToRoom 49
DoneWithTurn
END_COMMAND

COMMAND ANY
AtLocation 50
RandomMessage 91 95
END_COMMAND

COMMAND OPEN TIN
Not IsCarrying 258
Or
Not IsCarrying 221
Or
Not FlagOn 13
PrintMessage 250 (REM Sorry, can't do)
DoneWithTurn
END_COMMAND

COMMAND OPEN TIN
IsCarrying 258
IsCarrying 221
FlagOn 13
PrintMessage 139
SwapLocations 258 278 (REM tin and peanut butter)
DoneWithTurn
END_COMMAND

(REM lift)

COMMAND PRESS BUTTON
AtLocation 52
Or AtLocation 54
PrintMessage 103 (REM which button)
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
SetVariableTo 7 0
AtLocation 52 (REM lift at ground floor)
NounToVariable 7
VariableEquals 7 1
PrintMessage 97 (REM already there) 
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
AtLocation 52 (REM lift at ground floor)
VariableEquals 7 3
PrintMessage 98 (REM lift moves) 
GoToRoom 54
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
AtLocation 52 (REM lift at ground floor)
VariableEquals 7 2
PrintMessage 99 (REM lift moves) 
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
SetVariableTo 7 0
AtLocation 54 (REM lift at ground floor)
NounToVariable 7
VariableEquals 7 3
PrintMessage 97 (REM already there) 
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
AtLocation 54 (REM lift at ground floor)
VariableEquals 7 1
PrintMessage 98 (REM lift moves) 
GoToRoom 52
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
AtLocation 54 (REM lift at ground floor)
VariableEquals 7 2
PrintMessage 99 (REM lift moves) 
DoneWithTurn
END_COMMAND

COMMAND PRESS ANY
AtLocation 54 (REM lift at ground floor)
Or AtLocation 52
Not VariableEquals 7 0
PrintMessage 102 (REM wrong number) 
DoneWithTurn
END_COMMAND

(REM software company receptionist)

COMMAND EAST
AtLocation 56 (REM corridor)
FlagOff 16 (REM first time)
PrintMessage 107 (REM receptionist first snub)
TurnFlagOn 16
TurnFlagOff 11 (REM standing)
END_COMMAND

COMMAND EAST
AtLocation 57
PrintMessage 106 (REM receptionist bars your way)
DoneWithTurn
END_COMMAND

COMMAND GIVE RELEASE TO RECEPTIONIST
AtLocation 57
IsCarrying 201 (REM press release)
PrintMessage 110 (REM receptionist response)
SendToRoom 201 0 (REM disposes of release)
TurnCounterOn 6 (REM counter for pr)
TurnFlagOn 15 (REM letter to receptionist)
DoneWithTurn
END_COMMAND

COMMAND TALK TO RECEPTIONIST
AtLocation 57
FlagOff 15 (REM letter not given to receptionist)
PrintMessage 108 (REM no letter response)
DoneWithTurn
END_COMMAND

COMMAND TALK TO RECEPTIONIST
AtLocation 57
FlagOn 15 (REM letter given to receptionist)
CounterEquals 6 0 (REM but PR man been)
PrintMessage 120 (REM are you still here)
DoneWithTurn
END_COMMAND

COMMAND TALK TO RECEPTIONIST
AtLocation 57
FlagOn 15 (REM letter given to receptionist)
CounterGT 6 0 (REM but PR man been)
PrintMessage 109 (REM letter response)
DoneWithTurn
END_COMMAND

COMMAND ANY
VerbIsDirection
AtLocation 57
TurnFlagOff 11 (REM stand)
END_COMMAND

(REM sit and stand in reception)

COMMAND SIT
AtLocation 57 (REM reception)
FlagOff 11 (REM standing)
PrintMessage 118 (REM sit)
TurnFlagOn 11 (REM sitting)
DoneWithTurn
END_COMMAND

COMMAND SIT
AtLocation 57 (REM reception)
FlagOn 11 (REM sitting)
PrintMessage 75 (REM already sitting)
DoneWithTurn
END_COMMAND

COMMAND STAND
AtLocation 57 (REM reception)
FlagOn 11 (REM sitting)
PrintMessage 119 (REM you stand)
TurnFlagOff 11 (REM standing)
DoneWithTurn
END_COMMAND

COMMAND STAND
AtLocation 57 (REM reception)
FlagOff 11 (REM standing)
PrintMessage 76 (REM already stand)
DoneWithTurn
END_COMMAND

(REM lager drinking)

COMMAND ANY
AtLocation 57
CounterGT 6 3 (REM four turns after giving release)
PrintMessage 111 (REM PR person)
GetIt 265 (REM lager)
TurnCounterOff 6
END_COMMAND

COMMAND DRINK LAGER
Present 265 (REM lager)
TurnCounterOn 7 (REM lager drunk)
TurnFlagOn 14 (REM lager drunk)
SwapLocations 265 277 (REM changes lager for empty glass)
PrintMessage 112 (REM tipsy warm glow)
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 57
CounterGT 7 1
PrintMessage 116 (REM go to loo)
TurnCounterOff 7 (REM pissed)
END_COMMAND

COMMAND ANY
AtLocation 58
CounterGT 7 1
PrintMessage 116 (REM go to loo)
TurnCounterOff 7 (REM pissed)
END_COMMAND

COMMAND ANY
CounterEquals 7 2 (REM second turn after drink)
PrintMessage 113 (REM filling of bladder)
END_COMMAND

COMMAND ANY
CounterEquals 7 4 (REM fourth turn after drink)
PrintMessage 114 (REM full bladder)
END_COMMAND

COMMAND ANY
CounterEquals 7 6 (REM sixth turn)
PrintMessage 115 (REM bladder bursts)
GoToRoom 199 (REM dead)
DoneWithTurn
END_COMMAND

(REM falling from toilet)

COMMAND DRY HANDS
AtLocation 58
PrintMessage 117 (REM dry hands)
DoneWithTurn
END_COMMAND

COMMAND PULL TOWEL
AtLocation 58
FlagOn 14 (REM lager drunk)
PrintMessage 104 (REM good falling)
GoToRoom 59 (REM programmer's cell)
DoneWithTurn
END_COMMAND

COMMAND PULL TOWEL
AtLocation 58
FlagOff 14 (REM lager not drunk)
PrintMessage 105 (REM bad falling)
GoToRoom 199 (REM end)
DoneWithTurn
END_COMMAND

(REM pocket computer)

COMMAND LOOK BEHIND BOWL
AtLocation 58
IsLocated 263 0
PrintMessage 121 (REM find computer)
PutInCurrentRoom 263
DoneWithTurn
END_COMMAND

(REM fish booklet)

COMMAND READ BOOKLET
IsCarrying 223 (REM booklet)
IsCarrying 242 (REM red herring)
SwapLocations 242 259 (REM herring and sardine)
PrintMessage 126 (REM swap message)
DoneWithTurn
END_COMMAND

(REM giving programmer things)

COMMAND ANY
AtLocation 59 (REM programmer's cell)
FlagOff 19 (REM peanut butter not given)
FlagOff 25 (REM sandwich not made)
FlagOff 26
PrintMessage 127
END_COMMAND

COMMAND ANY
AtLocation 59 (REM programmer's cell)
FlagOff 20 (REM sardine not given)
FlagOff 25 (REM sandwich not made)
FlagOff 26
PrintMessage 128
END_COMMAND

COMMAND ANY
AtLocation 59 (REM programmer's cell)
FlagOff 21 (REM bread not given)
FlagOff 24 (REM toast not made)
FlagOff 25 (REM sandwich not made)
FlagOff 26
PrintMessage 129
END_COMMAND

COMMAND ANY
AtLocation 59
FlagOff 23 (REM tape not given) 
FlagOff 26 (REM program not completed)
PrintMessage 140 (REM need music)
END_COMMAND

COMMAND ANY
AtLocation 59
FlagOn 21 (REM bread given)
FlagOff 24 (REM toast not made) 
FlagOff 26
PrintMessage 134 (REM need toast)
END_COMMAND

COMMAND ANY
AtLocation 59
FlagOn 21 (REM bread given)
FlagOn 22 (REM screwdriver given)
TurnFlagOn 24 (REM toast made)
PrintMessage 142 (REM makes toast)
TurnFlagOff 21
TurnFlagOff 22
END_COMMAND

COMMAND ANY
AtLocation 59
FlagOn 19 (REM peanut butter)
FlagOn 20 (REM sardine)
FlagOn 24 (REM toast)
PrintMessage 138 (REM makes sandwich and eats)
TurnFlagOn 25 (REM sandwich eaten)
TurnFlagOff 19
TurnFlagOff 20
TurnFlagOff 24
END_COMMAND

COMMAND ANY
AtLocation 59
FlagOn 25 (REM sandwich eaten)
FlagOn 23 (REM tape)
PrintMessage 144 (REM completes program)
TurnFlagOff 25
TurnFlagOff 23
TurnFlagOn 26 (REM program completed)
SendToRoom 268 59 (REM completed program)
END_COMMAND

COMMAND GET STEREO
AtLocation 59
PrintMessage 143 (REM programmer won't give back)
DoneWithTurn
END_COMMAND

COMMAND GET ANY FROM PROGRAMMER
AtLocation 59
PrintMessage 143 (REM programmer won't give back)
DoneWithTurn
END_COMMAND

COMMAND GIVE SARDINE TIN TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 258 (REM sardine tin)
PrintMessage 132 (REM doesn't want it)
DoneWithTurn
END_COMMAND

COMMAND GIVE HERRING TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 242 (REM red herring)
PrintMessage 133 (REM doesn't want it)
DoneWithTurn
END_COMMAND

(REM shouldn't we also have the sweets here)

COMMAND GIVE SARDINE TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 259 (REM sardine)
PrintMessage 131 (REM the programmer accepts it)
TurnFlagOn 20 (REM sardine given)
SendToRoom 259 0
DoneWithTurn
END_COMMAND

COMMAND GIVE PEANUT BUTTER TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 278 (REM sardine)
PrintMessage 131 (REM the programmer accepts it)
TurnFlagOn 19 (REM sardine given)
SendToRoom 278 0
DoneWithTurn
END_COMMAND

COMMAND GIVE BREAD TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 245 (REM bread)
PrintMessage 131 (REM the programmer accepts it)
TurnFlagOn 21 (REM bread given)
SendToRoom 245 0
DoneWithTurn
END_COMMAND

COMMAND GIVE SCREWDRIVER TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 248 (REM screwdriver)
PrintMessage 131 (REM the programmer accepts it)
TurnFlagOn 22 (REM screwdriver given)
SendToRoom 248 0
DoneWithTurn
END_COMMAND

COMMAND GIVE TAPE TO PROGRAMMER
AtLocation 59 (REM programmer's cell)
Present 252 (REM tape)
PrintMessage 131 (REM the programmer accepts it)
TurnFlagOn 23 (REM tape given)
SendToRoom 252 0
DoneWithTurn
END_COMMAND

(REM electronic lock)

COMMAND PUT SILVER PAPER INTO LOCK
ReDirectTo INSERT SILVER PAPER INTO LOCK
END_COMMAND

COMMAND INSERT SILVER PAPER INTO LOCK
AtLocation 60 (REM corridor by fire exit)
Present 234 (REM silver paper)
PrintMessage 135 (REM door opens)
TurnFlagOn 27 (REM lock opened)
SendToRoom 234 0
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation 60
FlagOn 27
ChangePassageway 3 62
END_COMMAND

(REM taxi rank)

COMMAND EAST
AtLocation 49
FlagOff 26 (REM program not completed)
GoToRoom 53
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation 49
FlagOn 26 (REM program completed)
GoToRoom 63 (REM taxi rank with taxi)
DoneWithTurn
END_COMMAND

COMMAND EAST
AtLocation 63
TurnCounterOn 8
END_COMMAND

(REM in taxi)

COMMAND WRITE REVIEW
Not IsCarrying 263 (REM pocket computer)
PrintMessage 141 (REM no way of writing)
DoneWithTurn
END_COMMAND

COMMAND WRITE REVIEW
Not AtLocation 64 (REM cab)
PrintMessage 153 (REM not the time or the place)
DoneWithTurn
END_COMMAND

COMMAND WRITE REVIEW
FlagOn 29 (REM written)
PrintMessage 158 (REM it's already written)
DoneWithTurn
END_COMMAND

COMMAND WRITE REVIEW
VariableEquals 8 3 (REM three quarters written)
IsCarrying 263 (REM pocket computer)
AtLocation 64 (REM cab)
PrintMessage 157 (REM finished)
TurnFlagOn 29 (REM written)
TurnFlagOn 28 (REM arrive EMAP)
PlusScore 50
ChangePassageway 1 65
DoneWithTurn
END_COMMAND

COMMAND WRITE REVIEW
VariableEquals 8 2 (REM half written)
IsCarrying 263 (REM pocket computer)
AtLocation 64 (REM cab)
AddToVariable 8 1 (REM adds another part of review)
PrintMessage 156 (REM three quarters written)
DoneWithTurn
END_COMMAND

COMMAND WRITE REVIEW
VariableEquals 8 1 (REM quarter written)
IsCarrying 263 (REM pocket computer)
AtLocation 64 (REM cab)
AddToVariable 8 1 (REM adds another part of review)
PrintMessage 155 (REM half written)
DoneWithTurn
END_COMMAND

COMMAND WRITE REVIEW
FlagOn 26 (REM program written)
VariableEquals 8 0 (REM not started yet)
IsCarrying 263 (REM pocket computer)
AtLocation 64 (REM cab)
AddToVariable 8 1 (REM adds another part of review)
PrintMessage 154 (REM quarter written)
DoneWithTurn
END_COMMAND

COMMAND ANY
AtLocation 64
CounterEquals 8 2
PrintMessage 145
END_COMMAND

COMMAND ANY
AtLocation 64
CounterEquals 8 3
PrintMessage 146
END_COMMAND

COMMAND ANY
AtLocation 64
CounterEquals 8 4
PrintMessage 147
END_COMMAND

COMMAND ANY
AtLocation 64
CounterEquals 8 5
PrintMessage 148
END_COMMAND

COMMAND ANY
AtLocation 64
CounterEquals 8 6
TurnCounterOff 8
TurnFlagOn 28 (REM at EMAP)
END_COMMAND

COMMAND TALK TO CABBIE
AtLocation 64
Not Present 263 (REM pocket computer)
PrintMessage 151 (REM you talked to cabbie)
TurnCounterOff 8
TurnFlagOn 28 (REM arrive EMAP)
ChangePassageway 1 65
DoneWithTurn
END_COMMAND

COMMAND TALK TO CABBIE
AtLocation 64
Present 263 (REM pocket computer)
PrintMessage 159 (REM you talked to cabbie)
TurnCounterOff 8
TurnFlagOn 28 (REM arrive EMAP)
ChangePassageway 1 65
DoneWithTurn
END_COMMAND

(REM taxi arrival)

COMMAND TALK TO CABBIE
AtLocation 64
FlagOn 28 (REM arrive EMAP)
PrintMessage 164 (REM no longer interested)
END_COMMAND

COMMAND ANY
AtLocation 64
FlagOn 28
IsCarrying 229 (REM change)
VariableGT 9 1499 (REM have #15)
PrintMessage 149 (REM cost)
PrintMessage 152 (REM pay driver)
SendToRoom 229 0 (REM all change)
GoToRoom 65 (REM pavement outside EMAP)
END_COMMAND

COMMAND ANY
AtLocation 64
FlagOn 28
VariableLT 9 1500 (REM less than #15)
Or
Not IsCarrying 229 (REM change)
PrintMessage 149 (REM cost)
PrintMessage 150 (REM driver angry)
GoToRoom 199 (REM end)
END_COMMAND

(REM the end)

COMMAND NORTH
AtLocation 70 
IsCarrying 255 (REM south pearl)
IsCarrying 256 (REM west pearl)
PrintMessage 161 (REM Mystic Mavis)
SendToRoom 255 0
SendToRoom 256 0
SendToRoom 282 70
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 70
Not IsWearing 282 (REM sou'wester)
PrintMessage 160 (REM ferocious gale bad)
GoToRoom 199
DoneWithTurn
END_COMMAND

COMMAND NORTH
AtLocation 70
IsWearing 282
IsCarrying 263
FlagOn 29 (REM review written)
PrintMessage 162 (REM ferocious gale good)
WaitForReturn
ChangePassageway 1 71
END_COMMAND

COMMAND NORTH
AtLocation 70
IsWearing 282
Not IsCarrying 263
OR
FlagOff 29 (REM review not written)
PrintMessage 163
GoToRoom 199
DoneWithTurn
END_COMMAND

(REM time)

COMMAND ANY
TurnsGT 240
PrintMessage 122 (REM time)
GoToRoom 199
DoneWithTurn
END_COMMAND

(REM help)

COMMAND HELP
AtLocationGT 12
PrintMessage 240
MinusScore 10
END_COMMAND

